package com.ruoyi.drinkwater.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;
import java.util.Map;

/**
 * 水源地取水口对象 BUS_WATER_SEGMENT_WATER_INTAKE
 * 
 * @author ruoyi
 * @date 2025-08-26
 */
public class BusWaterSegmentWaterIntake extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 1:主断面，0：非主断面 */
    private String id;

    /** 断面名称 */
    @Excel(name = "断面名称")
    private String segmentname;

    /** 断面别名 */
    @Excel(name = "断面别名")
    private String segmentalias;

    /** 断面编码（饮源） */
    @Excel(name = "断面编码", readConverterExp = "饮=源")
    private String segmentdrinkcode;

    /** 断面编码（地表水） */
    @Excel(name = "断面编码", readConverterExp = "地=表水")
    private String segmentcode;

    /** 监测分类（1标准站/2微站） */
    @Excel(name = "监测分类", readConverterExp = "1=标准站/2微站")
    private String monitortype;

    /** 是否手工监测(0：否 1：是) */
    @Excel(name = "是否手工监测(0：否 1：是)")
    private String ismanual;

    /** 是否自动监测 */
    @Excel(name = "是否自动监测")
    private String isauto;

    /** 是否国家自动站 */
    @Excel(name = "是否国家自动站")
    private String iscountryauto;

    /** 是否参与城市评价 */
    @Excel(name = "是否参与城市评价")
    private String isevaluate;

    /** 是否饮用水源地 */
    @Excel(name = "是否饮用水源地")
    private String isdrink;

    /** 使用状态（1启用、0停用） */
    @Excel(name = "使用状态", readConverterExp = "1=启用、0停用")
    private String lifecycle;

    /** 断面分类（1河流/2湖库/3地下水） */
    @Excel(name = "断面分类", readConverterExp = "1=河流/2湖库/3地下水")
    private String segmentcategory;

    /** 断面属性（0正常，1加密，2专项，3科研项目） */
    @Excel(name = "断面属性", readConverterExp = "0=正常，1加密，2专项，3科研项目")
    private String segmenttype;

    /** 河流名称 */
    @Excel(name = "河流名称")
    private String rivername;

    /** 河流编码 */
    @Excel(name = "河流编码")
    private String riverid;

    /** 湖库名称 */
    @Excel(name = "湖库名称")
    private String lakename;

    /** 湖库编码 */
    @Excel(name = "湖库编码")
    private String lakeid;

    /** 饮用水源地名称 */
    @Excel(name = "饮用水源地名称")
    private String drinksourcename;

    /** 饮用水源地Guid */
    @Excel(name = "饮用水源地Guid")
    private String drinksourceid;

    /** 经度 */
    @Excel(name = "经度")
    private String longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private String latitude;

    /** 断面位置 */
    @Excel(name = "断面位置")
    private String segmaddress;

    /** 默认垂直采样方位 */
    @Excel(name = "默认垂直采样方位")
    private String verticalazimuth;

    /** 默认水平采样方位 */
    @Excel(name = "默认水平采样方位")
    private String horizontalazimuth;

    /** 默认潮汐类型 */
    @Excel(name = "默认潮汐类型")
    private String tidetype;

    /** 上下游编码（河流上下游编码+断面排序号） */
    @Excel(name = "上下游编码", readConverterExp = "河=流上下游编码+断面排序号")
    private String segmentsort;

    /** 干流/支流 */
    @Excel(name = "干流/支流")
    private String streamtype;

    /** 省级归属 */
    @Excel(name = "省级归属")
    private String province;

    /** 省级归属编码 */
    @Excel(name = "省级归属编码")
    private String provincecode;

    /** 市级归属 */
    @Excel(name = "市级归属")
    private String city;

    /** 市级归属编码 */
    @Excel(name = "市级归属编码")
    private String citycode;

    /** 区县归属(目前行政区划是取这个字段) */
    @Excel(name = "区县归属(目前行政区划是取这个字段)")
    private String county;

    /** 区县归属编码(目前行政区划编码是取这个字段) */
    @Excel(name = "区县归属编码(目前行政区划编码是取这个字段)")
    private String countycode;

    /** 乡镇街道归属 */
    @Excel(name = "乡镇街道归属")
    private String townstreets;

    /** 乡镇街道归属编码 */
    @Excel(name = "乡镇街道归属编码")
    private String townstreetscode;

    /** 自动监测设备编号 */
    @Excel(name = "自动监测设备编号")
    private String autoequipmn;

    /** 启用时间 */
    @Excel(name = "启用时间")
    private String startdate;

    /** 停用时间 */
    @Excel(name = "停用时间")
    private String enddate;

    /** 简介 */
    @Excel(name = "简介")
    private String introduction;

    /** 湖库图片路径 */
    @Excel(name = "湖库图片路径")
    private String imagesurl;

    /** 开封项目分类：（0国控，1省控，2市控-县界，3市控-城区） */
    @Excel(name = "开封项目分类：", readConverterExp = "0=国控，1省控，2市控-县界，3市控-城区")
    private String remark1;

    /** 流域 */
    @Excel(name = "流域")
    private String remark2;

    /** 1：不考核不评价，2：考核（扣除背景值），3：考核，4：参考 */
    @Excel(name = "1：不考核不评价，2：考核", readConverterExp = "扣=除背景值")
    private String remark3;

    /** 1，县域地表水 */
    @Excel(name = "1，县域地表水")
    private String remark4;

    /** 1,历史断面 */
    @Excel(name = "1,历史断面")
    private String remark5;

    /** 运维单位 */
    @Excel(name = "运维单位")
    private String remark6;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String ismain;

    /** 一级保护区描述 */
    @Excel(name = "一级保护区描述")
    private String primarydescribe;

    /** 二级保护区描述 */
    @Excel(name = "二级保护区描述")
    private String secondarydescribe;

    /** 准保护区描述 */
    @Excel(name = "准保护区描述")
    private String quasidescribe;

    /** 一级保护区面积（km²） */
    @Excel(name = "一级保护区面积", readConverterExp = "k=m²")
    private String firstprotectarea;

    /** 二级保护区面积（km²) */
    @Excel(name = "二级保护区面积", readConverterExp = "二级保护区面积（km²)")
    private String secondprotectarea;

    /** 准保护区面积（km²) */
    @Excel(name = "准保护区面积", readConverterExp = "准保护区面积（km²)")
    private String quasiprotectarea;

    /** 视频路径 */
    @Excel(name = "视频路径")
    private String videourl;

    private String createtime;

    /** 一级保护区拐点 */
    // @Excel(name = "一级保护区拐点")
    private List<Map> oneProtectInfle;

    /** 二级保护区拐点 */
    //@Excel(name = "二级保护区拐点")
    private List<Map>twoProtectInfle;
    /** 准保护区拐点 */
    //@Excel(name = "准保护区拐点")
    private List<Map> protectInfle;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setSegmentname(String segmentname) 
    {
        this.segmentname = segmentname;
    }

    public String getSegmentname() 
    {
        return segmentname;
    }

    public void setSegmentalias(String segmentalias) 
    {
        this.segmentalias = segmentalias;
    }

    public String getSegmentalias() 
    {
        return segmentalias;
    }

    public void setSegmentdrinkcode(String segmentdrinkcode) 
    {
        this.segmentdrinkcode = segmentdrinkcode;
    }

    public String getSegmentdrinkcode() 
    {
        return segmentdrinkcode;
    }

    public void setSegmentcode(String segmentcode) 
    {
        this.segmentcode = segmentcode;
    }

    public String getSegmentcode() 
    {
        return segmentcode;
    }

    public void setMonitortype(String monitortype) 
    {
        this.monitortype = monitortype;
    }

    public String getMonitortype() 
    {
        return monitortype;
    }

    public void setIsmanual(String ismanual) 
    {
        this.ismanual = ismanual;
    }

    public String getIsmanual() 
    {
        return ismanual;
    }

    public void setIsauto(String isauto) 
    {
        this.isauto = isauto;
    }

    public String getIsauto() 
    {
        return isauto;
    }

    public void setIscountryauto(String iscountryauto) 
    {
        this.iscountryauto = iscountryauto;
    }

    public String getIscountryauto() 
    {
        return iscountryauto;
    }

    public void setIsevaluate(String isevaluate) 
    {
        this.isevaluate = isevaluate;
    }

    public String getIsevaluate() 
    {
        return isevaluate;
    }

    public void setIsdrink(String isdrink) 
    {
        this.isdrink = isdrink;
    }

    public String getIsdrink() 
    {
        return isdrink;
    }

    public void setLifecycle(String lifecycle) 
    {
        this.lifecycle = lifecycle;
    }

    public String getLifecycle() 
    {
        return lifecycle;
    }

    public void setSegmentcategory(String segmentcategory) 
    {
        this.segmentcategory = segmentcategory;
    }

    public String getSegmentcategory() 
    {
        return segmentcategory;
    }

    public void setSegmenttype(String segmenttype) 
    {
        this.segmenttype = segmenttype;
    }

    public String getSegmenttype() 
    {
        return segmenttype;
    }

    public void setRivername(String rivername) 
    {
        this.rivername = rivername;
    }

    public String getRivername() 
    {
        return rivername;
    }

    public void setRiverid(String riverid) 
    {
        this.riverid = riverid;
    }

    public String getRiverid() 
    {
        return riverid;
    }

    public void setLakename(String lakename) 
    {
        this.lakename = lakename;
    }

    public String getLakename() 
    {
        return lakename;
    }

    public void setLakeid(String lakeid) 
    {
        this.lakeid = lakeid;
    }

    public String getLakeid() 
    {
        return lakeid;
    }

    public void setDrinksourcename(String drinksourcename) 
    {
        this.drinksourcename = drinksourcename;
    }

    public String getDrinksourcename() 
    {
        return drinksourcename;
    }

    public void setDrinksourceid(String drinksourceid) 
    {
        this.drinksourceid = drinksourceid;
    }

    public String getDrinksourceid() 
    {
        return drinksourceid;
    }

    public void setLongitude(String longitude) 
    {
        this.longitude = longitude;
    }

    public String getLongitude() 
    {
        return longitude;
    }

    public void setLatitude(String latitude) 
    {
        this.latitude = latitude;
    }

    public String getLatitude() 
    {
        return latitude;
    }

    public void setSegmaddress(String segmaddress) 
    {
        this.segmaddress = segmaddress;
    }

    public String getSegmaddress() 
    {
        return segmaddress;
    }

    public void setVerticalazimuth(String verticalazimuth) 
    {
        this.verticalazimuth = verticalazimuth;
    }

    public String getVerticalazimuth() 
    {
        return verticalazimuth;
    }

    public void setHorizontalazimuth(String horizontalazimuth) 
    {
        this.horizontalazimuth = horizontalazimuth;
    }

    public String getHorizontalazimuth() 
    {
        return horizontalazimuth;
    }

    public void setTidetype(String tidetype) 
    {
        this.tidetype = tidetype;
    }

    public String getTidetype() 
    {
        return tidetype;
    }

    public void setSegmentsort(String segmentsort) 
    {
        this.segmentsort = segmentsort;
    }

    public String getSegmentsort() 
    {
        return segmentsort;
    }

    public void setStreamtype(String streamtype) 
    {
        this.streamtype = streamtype;
    }

    public String getStreamtype() 
    {
        return streamtype;
    }

    public void setProvince(String province) 
    {
        this.province = province;
    }

    public String getProvince() 
    {
        return province;
    }

    public void setProvincecode(String provincecode) 
    {
        this.provincecode = provincecode;
    }

    public String getProvincecode() 
    {
        return provincecode;
    }

    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }

    public void setCitycode(String citycode) 
    {
        this.citycode = citycode;
    }

    public String getCitycode() 
    {
        return citycode;
    }

    public void setCounty(String county) 
    {
        this.county = county;
    }

    public String getCounty() 
    {
        return county;
    }

    public void setCountycode(String countycode) 
    {
        this.countycode = countycode;
    }

    public String getCountycode() 
    {
        return countycode;
    }

    public void setTownstreets(String townstreets) 
    {
        this.townstreets = townstreets;
    }

    public String getTownstreets() 
    {
        return townstreets;
    }

    public void setTownstreetscode(String townstreetscode) 
    {
        this.townstreetscode = townstreetscode;
    }

    public String getTownstreetscode() 
    {
        return townstreetscode;
    }

    public void setAutoequipmn(String autoequipmn) 
    {
        this.autoequipmn = autoequipmn;
    }

    public String getAutoequipmn() 
    {
        return autoequipmn;
    }

    public void setStartdate(String startdate) 
    {
        this.startdate = startdate;
    }

    public String getStartdate() 
    {
        return startdate;
    }

    public void setEnddate(String enddate) 
    {
        this.enddate = enddate;
    }

    public String getEnddate() 
    {
        return enddate;
    }

    public void setIntroduction(String introduction) 
    {
        this.introduction = introduction;
    }

    public String getIntroduction() 
    {
        return introduction;
    }

    public void setImagesurl(String imagesurl) 
    {
        this.imagesurl = imagesurl;
    }

    public String getImagesurl() 
    {
        return imagesurl;
    }

    public void setRemark1(String remark1) 
    {
        this.remark1 = remark1;
    }

    public String getRemark1() 
    {
        return remark1;
    }

    public void setRemark2(String remark2) 
    {
        this.remark2 = remark2;
    }

    public String getRemark2() 
    {
        return remark2;
    }

    public void setRemark3(String remark3) 
    {
        this.remark3 = remark3;
    }

    public String getRemark3() 
    {
        return remark3;
    }

    public void setRemark4(String remark4) 
    {
        this.remark4 = remark4;
    }

    public String getRemark4() 
    {
        return remark4;
    }

    public void setRemark5(String remark5) 
    {
        this.remark5 = remark5;
    }

    public String getRemark5() 
    {
        return remark5;
    }

    public void setRemark6(String remark6) 
    {
        this.remark6 = remark6;
    }

    public String getRemark6() 
    {
        return remark6;
    }

    public void setIsmain(String ismain) 
    {
        this.ismain = ismain;
    }

    public String getIsmain() 
    {
        return ismain;
    }

    public void setPrimarydescribe(String primarydescribe) 
    {
        this.primarydescribe = primarydescribe;
    }

    public String getPrimarydescribe() 
    {
        return primarydescribe;
    }

    public void setSecondarydescribe(String secondarydescribe) 
    {
        this.secondarydescribe = secondarydescribe;
    }

    public String getSecondarydescribe() 
    {
        return secondarydescribe;
    }

    public void setQuasidescribe(String quasidescribe) 
    {
        this.quasidescribe = quasidescribe;
    }

    public String getQuasidescribe() 
    {
        return quasidescribe;
    }

    public void setFirstprotectarea(String firstprotectarea) 
    {
        this.firstprotectarea = firstprotectarea;
    }

    public String getFirstprotectarea() 
    {
        return firstprotectarea;
    }

    public void setSecondprotectarea(String secondprotectarea) 
    {
        this.secondprotectarea = secondprotectarea;
    }

    public String getSecondprotectarea() 
    {
        return secondprotectarea;
    }

    public void setQuasiprotectarea(String quasiprotectarea) 
    {
        this.quasiprotectarea = quasiprotectarea;
    }

    public String getQuasiprotectarea() 
    {
        return quasiprotectarea;
    }

    public void setVideourl(String videourl) 
    {
        this.videourl = videourl;
    }

    public String getVideourl() 
    {
        return videourl;
    }

    public String getCreatetime() {
        return createtime;
    }

    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }

    public List<Map> getProtectInfle() {
        return protectInfle;
    }

    public void setProtectInfle(List<Map> protectInfle) {
        this.protectInfle = protectInfle;
    }

    public List<Map> getOneProtectInfle() {
        return oneProtectInfle;
    }

    public void setOneProtectInfle(List<Map> oneProtectInfle) {
        this.oneProtectInfle = oneProtectInfle;
    }

    public List<Map> getTwoProtectInfle() {
        return twoProtectInfle;
    }

    public void setTwoProtectInfle(List<Map> twoProtectInfle) {
        this.twoProtectInfle = twoProtectInfle;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("segmentname", getSegmentname())
            .append("segmentalias", getSegmentalias())
            .append("segmentdrinkcode", getSegmentdrinkcode())
            .append("segmentcode", getSegmentcode())
            .append("monitortype", getMonitortype())
            .append("ismanual", getIsmanual())
            .append("isauto", getIsauto())
            .append("iscountryauto", getIscountryauto())
            .append("isevaluate", getIsevaluate())
            .append("isdrink", getIsdrink())
            .append("lifecycle", getLifecycle())
            .append("segmentcategory", getSegmentcategory())
            .append("segmenttype", getSegmenttype())
            .append("rivername", getRivername())
            .append("riverid", getRiverid())
            .append("lakename", getLakename())
            .append("lakeid", getLakeid())
            .append("drinksourcename", getDrinksourcename())
            .append("drinksourceid", getDrinksourceid())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("segmaddress", getSegmaddress())
            .append("verticalazimuth", getVerticalazimuth())
            .append("horizontalazimuth", getHorizontalazimuth())
            .append("tidetype", getTidetype())
            .append("segmentsort", getSegmentsort())
            .append("streamtype", getStreamtype())
            .append("province", getProvince())
            .append("provincecode", getProvincecode())
            .append("city", getCity())
            .append("citycode", getCitycode())
            .append("county", getCounty())
            .append("countycode", getCountycode())
            .append("townstreets", getTownstreets())
            .append("townstreetscode", getTownstreetscode())
            .append("autoequipmn", getAutoequipmn())
            .append("startdate", getStartdate())
            .append("enddate", getEnddate())
            .append("introduction", getIntroduction())
            .append("imagesurl", getImagesurl())
            .append("remark1", getRemark1())
            .append("remark2", getRemark2())
            .append("remark3", getRemark3())
            .append("remark4", getRemark4())
            .append("remark5", getRemark5())
            .append("remark6", getRemark6())
            .append("ismain", getIsmain())
            .append("primarydescribe", getPrimarydescribe())
            .append("secondarydescribe", getSecondarydescribe())
            .append("quasidescribe", getQuasidescribe())
            .append("firstprotectarea", getFirstprotectarea())
            .append("secondprotectarea", getSecondprotectarea())
            .append("quasiprotectarea", getQuasiprotectarea())
            .append("createtime", getCreateTime())
            .append("videourl", getVideourl())
            .toString();
    }
}
